package xgenerator.generators.jgenerator;

import xgenerator.generators.PersistenceGenerator;
import xgenerator.model.ModelMetadata;

/**
 * <p>
 * Title:DaoGenerator
 * </p>
 * <p>
 * Description:具体功能见各方法描述
 * </p>
 * <p>
 * Copyright:Copyright (c) 2012
 * </p>
 * 
 * @author <a href="mailto:lishushan@gmail.com">liss</a>
 * @version 1.0
 */
public interface DaoGenerator extends PersistenceGenerator {

	/*
	 * java文件后缀
	 */
//	public static String DEFAULT_DAO_SUFFER = "Dao";
//	public static String DEFAULT_DAO_JDBC_IMPL_SUFFER = "DaoJdbcImpl";
//	public static String DEFAULT_DAO_HIBERNATE_IMPL_SUFFER = "DaoHibernateImpl";
//	public static String DEFAULT_METADATA_SUFFER = "Metadata";
	
	/*
	 * java代码目录名
	 */
	public static String DAO_DIR = "dao";
	public static String DAO_HIBERNATE_IMPL_DIR = "hibernate";
	public static String DAO_IMPL_DIR = "impl";
	public static String ENTITY_DIR = "entity";
	public static String METADATA_DIR = "metadata";
	
	public String generateDaoCode(ModelMetadata modelMetadata);
	public String generateDaoImplCode(ModelMetadata modelMetadata);
	public String generateMetadataCode(ModelMetadata modelMetadata);
}
